System, method, and apparatus for generating a timing signal

ABSTRACT

A method of wireless communications according to one embodiment of the invention includes obtaining a first time base (e.g. obtaining a code phase) from a signal received from a ground transmitter (e.g. a CDMA base station). A predetermined offset based on at least a propagation delay of the received signal is applied to the first time base to obtain a second time base. For example, the second time base may be aligned to a time base of a positioning satellite system (e.g. the NAVSTAR GPS). A timing signal is generated that has a code phase based on the second time base.

BACKGROUND

[0001] 1. Field of the Invention

[0002] This invention relates to wireless communications.

[0003] 2. Description of Related Art

[0004] Position determination has become significantly easier and moreaccurate since the development of positioning satellite systems. Oneexample of a system of positioning satellites is the NAVSTAR GlobalPositioning System (GPS) (as described in Global Positioning SystemStandard Positioning Service Signal Specification, 2^(nd) edition, Jun.2, 1995, United States Coast Guard Navigation Center, Alexandria, Va.).Another example of an existing system is the GLONASS GPS maintained bythe Russian Republic. Positioning satellite systems under planninginclude the European GALILEO proposal. GPS receivers are currentlyavailable for use in aircraft, ships, and ground vehicles and for handcarrying by individuals.

[0005] The NAVSTAR GPS provides for thirty-two satellites or ‘spacevehicles’ (SVs) (twenty-four are currently active) that orbit the earthin six orbital planes (four satellites in each plane). The SV orbitsrepeat almost the same ground track as the earth turns beneath them eachday. The orbital planes are equally spaced and inclined with respect tothe equatorial plane, thus ensuring that a line-of-sight path exists toat least five SVs from any (unobstructed) point on the earth.

[0006] Each SV carries a highly accurate atomic clock that issynchronized to a common time base. Ground-based monitor stationsmeasure signals from the SVs and incorporate these measurements intoorbital models for each satellite. Navigation data and SV clockcorrections are computed for each satellite from these models and areuploaded to each SV. The SV then transmits a navigation message thatincludes information relating to its position.

[0007] Each SV transmits its navigation message at a data rate of 50bits per second via a direct sequence spread spectrum signal (DSSS) thatis BPSK (binary phase-shift-keying) modulated onto a 1.57542-GHz carrier(also called L1 frequency). To spread the signal, each SV uses adifferent one of thirty-two pseudo-random noise (PRN) sequences (alsocalled coarse acquisition or C/A codes) that have a chip rate of 1.023MHz and a length of 1023 chips. The spreading codes are aligned with thecommon time base and repeat every millisecond.

[0008] A GPS receiver calculates its position by combining data from thenavigation message (which data indicates the position of the SV) withthe delay of the signal received from the SV (which indicates theposition of the receiver relative to the SV). Because of offsets in thereceiver's time base relative to the GPS time base, signals from atleast four SVs are typically required to resolve a position in threedimensions, although signals from additional SVs (if available) may beused to provide better accuracy.

[0009] Problems in GPS signal detection may occur when a GPS receivercannot receive a line-of-sight signal from a sufficient number of SVs.In obstructed environments (e.g. indoors or underground), therefore, itmay be difficult or impossible for a GPS receiver to make an accurateposition determination.

[0010] A pseudolite is a terrestrial transmitter that receives one ormore GPS signals and generates and transmits a C/A waveform at the GPSL1 carrier frequency. In the NAVSTAR GPS system, PRN sequences 33through 37 are not assigned to satellites and may be used by apseudolite to generate and transmit the CIA waveform. If the timing andposition of a pseudolite are known with high precision, then thetransmitted C/A waveform may be used to make a position determination.

[0011] Pseudolites may be used to augment GPS coverage. Unfortunately,pseudolites require a line-of-sight signal from one or more GPSsatellites and are useful only where a GPS signal is available.

SUMMARY

[0012] A method of wireless communications according to one embodimentof the invention includes obtaining a first time base from a signalreceived from a ground transmitter. For example, obtaining the firsttime base may include obtaining a code phase of the received signaland/or decoding a time information message from the received signal.Obtaining the first time base may also include synchronizing anoscillator or adjusting a counter or code generator. In one example, thefirst time base is obtained from a signal received from a base stationof a network for cellular telephony (e.g. a CDMA base station).

[0013] Such a method also includes applying a predetermined offset tothe first time base to obtain a second time base. The predeterminedoffset is based on a propagation delay of the received signal. Thepredetermined offset may also be based on signal processing delaysand/or other signal transmission delays. Obtaining the second time basemay include synchronizing an oscillator or adjusting a counter or codegenerator.

[0014] Such a method also includes generating a timing signal that has acode phase based on the second time base. For example, the code phase ofthe timing signal may be aligned to a time base of a positioningsatellite system (e.g. the NAVSTAR GPS).

BRIEF DESCRIPTION OF THE DRAWINGS

[0015]FIG. 1 shows a flowchart of a method M100 according to anembodiment of the invention.

[0016]FIG. 2 shows an implementation T102 of task T100.

[0017]FIG. 3 shows an implementation T104 of task T100.

[0018]FIG. 4 shows an implementation T106 of task T100.

[0019]FIG. 5 shows a flowchart of an implementation M200 of method M100.

[0020]FIG. 6 is a block diagram of an apparatus 100 according to anembodiment of the invention.

[0021]FIG. 7 is a block diagram of an implementation 102 of apparatus100.

[0022]FIG. 8 is a block diagram of an implementation 200 of apparatus100.

[0023]FIG. 9 is a block diagram of an implementation 202 of apparatus200.

[0024]FIG. 8 is a block diagram of an implementation 300 of apparatus100.

[0025]FIG. 11 is a block diagram of an implementation 302 of apparatus300.

[0026]FIG. 12 is a block diagram of an implementation 305 of apparatus300.

DETAILED DESCRIPTION

[0027]FIG. 1 shows a flowchart for a method M100 according to anembodiment of the invention. Task T100 obtains a first time base from asignal received from a ground transmitter (‘the received signal’). TaskT200 applies a predetermined offset to the first time base to obtain asecond time base. The predetermined offset is based on a propagationdelay of the received signal. Task T300 generates a timing signal whosecode phase is based on the second time base.

[0028] The received signal may be modulated according to an amplitudemodulation (AM) scheme such as OOK (on-off keying); a frequency shiftkeying (FSK) scheme; a phase shift keying (PSK) scheme such as BPSK(binary PSK), QPSK (quadrature PSK), 8-PSK, or OQPSK (offset QPSK); aminimum shift keying (MSK) scheme such as GMSK (Gaussian MSK); or amixed scheme such as QAM (quadrature amplitude modulation). In certainapplications, task T100 obtains the first time base from a terrestrialsource that maintains (or that has better access to) a more accuratetime base than is available at the point of reception.

[0029] In an exemplary application of method M100, task T100 obtains thefirst time base from a signal received from a base station of a networkfor wireless communications. For example, the network may be a networkfor cellular telephony such as an AMPS (Advanced Mobile Phone System)network, a GSM (Global System for Mobile Communications) network, or anetwork compliant with one or more CDMA (code-division multiple access)standards such as Telecommunications Industry Association/ElectronicsIndustries Association Interim Standard-95 (TIA/EIA IS-95), “MOBILESTATION-BASE STATION COMPATIBILITY STANDARD FOR DUAL-MODE WIDEBANDSPREAD SPECTRUM CELLULAR SYSTEM,” published in July 1993,TIA/EIA/IS-835-A, “CDMA2000 WIRELESS IP NETWORK STANDARD,” published inMay 2001; TIA/EIA/IS-856, “CDMA2000, HIGH RATE PACKET DATA AIR INTERFACESPECIFICATION,” published in November 2000; TIA/EIA/IS-2000.1-A,“INTRODUCTION TO CDMA2000 STANDARD FOR SPREAD SPECTRUM SYSTEMS,”published in March 2000, and the other five documents of the IS-2000series; and TIA/EIA/IS-707-A, “DATA SERVICE OPTIONS FOR WIDEBAND SPREADSPECTRUM SYSTEMS,” published in April 1999.

[0030] A network for wireless communications may include one or morerepeaters, where each repeater receives and retransmits a signaltransmitted by a base station. Such devices may be used to providesignal availability in obstructed areas, such as urban canyons or subwaytunnels. Alternatively, repeaters may be used to extend the effectivecoverage area of a base station in a sparsely populated (e.g. rural)region. In some cases, a repeater may transmit a slightly differentsignal from the one it is repeating (e.g. to distinguish theretransmitted signal from the original signal, or to identify the signalas being transmitted by a repeater). For example, a repeater of a DSSSCDMA signal may frequency-modulate the signal slightly beforetransmission and/or may apply a different spreading code. In anotherapplication of method M100, task T100 obtains the first time base from asignal received from a repeater.

[0031] In some applications of method M100, the received signal is aspread spectrum signal. Such a signal is modulated with a periodicspreading code (e.g. a pseudorandom noise (PRN) code) that has a chiprate much higher than the symbol rate of a data message carried by thesignal. In a direct sequence spread spectrum (DSSS) system, for example,a data stream is multiplied (e.g. exclusive-OR'd) with one or morespreading codes before carrier modulation. The code phase of a spreadspectrum signal is a quality that is recognized in the art and may bedefined as a time difference between (A) the periodic spreading code asit appears in the signal under test and (B) a copy of the spreading codethat is aligned to a predetermined time reference.

[0032]FIG. 2 shows an implementation T102 of task T100 that may beperformed in a spread spectrum application. Task T110 obtains a codephase of the received signal. In a DSSS application, for example, taskT110 may correlate one or more copies (e.g. having different delays) ofthe spreading code with the received signal (e.g. after carrierdemodulation) to obtain the code phase. Alternatively, task T110 mayobtain the code phase from a searcher as described in U.S. Pat. No.5,764,687, ‘MOBILE DEMODULATOR ARCHITECTURE FOR A SPREAD SPECTRUMCOMMUNICATION SYSTEM’ or U.S. Pat. No. 6,363,108, ‘PROGRAMMABLE MATCHEDFILTER SEARCHER’ or other correlating or minimum mean-square estimation(MMSE) device.

[0033] It may be desirable to obtain a time base that is unambiguousover an interval greater than a period of the spreading code. In afurther application of method M100, the received signal has a timeinformation message. For example, such a message may identify a time(e.g. in hours, minutes, seconds, and/or portions of seconds) that has apredetermined relation to the time at which the signal was transmitted.Such a message may also identify a date having a predetermined relationto the time at which the signal was transmitted.

[0034]FIG. 3 shows an implementation T104 of task T100 that may beperformed in such an application. Task T120 obtains a time informationmessage from the received signal. For example, task T120 may includedecoding the time information message from the demodulated receivedsignal. In a DSSS application, task T120 may decode the time informationmessage by despreading (i.e. applying one or more spreading codes, suchas PRN codes) or uncovering (i.e. applying one or more covering codes,such as Walsh codes or other orthogonal or nearly orthogonal codes) tothe received signal. Decoding the time information message may alsoinclude such data processing operations as deinterleaving a data stream,data decompression, and decoding one or more convolutional, turbo,and/or parity codes. In another implementation, task T120 may beperformed after task T200.

[0035] The first time base may be represented by a value obtained fromthe received signal (e.g. the code phase). Alternatively, the first timebase may be represented by a timing circuit, counter value, or othersuch device or quantity that is set according to a value obtained fromthe received signal. For example, task T100 may also includesynchronizing a timing circuit such as an oscillator or clock, oradjusting a counter or a code generator, according to the obtained codephase and/or time information message.

[0036]FIG. 4 shows an implementation T106 of task T100 that includestasks Ti 10 and T120. In one such application of method M100, task Ti 10obtains the code phase from one channel of the received signal, and taskT120 decodes the time information message from a different channel ofthe received signal. In a case where the received signal is receivedfrom a base station of a CDMA network for cellular telephony, forexample, the code phase may be acquired from a pilot channel, while thetime information message may be acquired from a synchronization channel.In such a case, the two channels may be spread using different spreadingcodes (e.g. pseudorandom noise codes) and/or covered using differentcovering codes (e.g. Walsh codes).

[0037] The predetermined offset is based on a propagation delay of thereceived signal. The propagation delay may be obtained from directmeasurement and/or may be calculated according to the length of thesignal path between the ground transmitter and the point of reception(which calculation may account for multipath reflections). Thepredetermined offset may also be based on other factors such ascalibration errors, which may include signal processing delays (analogand/or digital) at the point of reception, signal processing delays inthe ground transmitter, and/or signal transmission delays (e.g. ascaused by an antenna cable).

[0038] Task T200 obtains a second time base by applying thepredetermined offset to the first time base. In an exemplary applicationof method M100, the predetermined offset is applied to the first timebase by subtracting the offset from the time base (i.e. effectivelyturning the first time base backward in time). Task T200 may includesynchronizing a timing circuit such as an oscillator or clock, oradjusting a counter or a code generator, according to the result ofapplying the predetermined offset to the first time base.

[0039] A base station of a CDMA network for cellular telephony that iscompliant with at least one of the IS-95/2000 standards referenced abovetransmits a DSSS, PSK-modulated signal according to a time base that isaligned with the NAVSTAR GPS time base. Specifically, a spreading codesequence in a signal transmitted by such a base station is synchronizedto the GPS time base as follows: every eighty milliseconds, the start ofthe CDMA spreading code (which has a period of 80/3 or 26.666 . . .milliseconds) coincides with a start of a GPS C/A sequence (which has aperiod of one millisecond) as transmitted by an SV.

[0040] In a particular application of method M100, the first time baseis obtained from a signal received from a base station of a CDMA networkfor cellular telephony that is compliant with such a standard (or from arepeater of such a signal). Upon application of the predetermined offset(e.g. upon execution of task T200), a second time base is obtained thatis aligned with the NAVSTAR GPS time base. In other words, propagationand possibly other delays in the received signal path are compensatedsuch that the second time base (e.g. as maintained by a local clock oroscillator) is essentially the same as the GPS-aligned time basemaintained by the base station (required by the standard to be withinten microseconds of the actual GPS time base, and typically within onemicrosecond of that time base).

[0041] Task T300 generates a timing signal based on the second timebase. In one application, task T300 generates a signal that is spread bya PRN code (e.g. a GPS C/A sequence) whose start essentially coincideswith the start of a C/A sequence as transmitted by a GPS SV. In otherwords, the code phase of such a timing signal is synchronized to the GPStime base.

[0042] In an exemplary implementation, task T300 constructs a GPS C/Acode for the timing signal by exclusive-ORing the outputs of two linearfeedback shift registers (LFSRs): one LFSR for an in-phase component ofthe timing signal and the other for a quadrature-phase component of thetiming signal. The initial state for the in-phase LFSR is the same forall C/A codes, while the initial state for the quadrature-phase LFSRdepends on the PRN number of the selected code. In such animplementation, task T300 may use PRN sequences 33 through 37 (which arenot assigned to satellites), or any other of the 1023 possible GPS C/Acodes may be used (lower-numbered PRN sequences have bettercross-correlation properties), possibly excluding PRN sequences 1-32(which are reserved for SVs).

[0043] In one implementation of task T300, the timing signal istransmitted without modulation by a data stream (e.g. the signal ismodulated by a string of zeroes). Such an implementation may have theadvantage of enabling a lower transmit power by supporting a longerperiod of coherent integration (e.g. for a greater effectivesignal-to-noise ratio) at the receiver of the timing signal. Advantagesrelated to a lower transmit power may include extended battery life,reduced interference with an existing system, and greater deploymentopportunities. In one example, such an implementation is applied to asituation where timing information that is unambiguous over an intervalgreater than a period of the code of the timing signal is alreadyavailable or is otherwise unnecessary.

[0044] In another implementation of task T300, the code of the timingsignal is modulated by a predetermined data pattern. In one suchexample, the code is modulated at the desired data rate (e.g. at the GPSdata rate of 50 bits/second) by a stream of alternating zeroes and ones.Such an implementation may have the advantage of providing informationregarding bit edge detection to the receiver of the timing signal. Inanother example, the code is modulated at the desired rate with a datapattern having a longer period. Such an example may be used to providetiming information that is unambiguous over a length of the period ofthe data pattern. Even in a situation where data representing otherinformation is modulated onto the timing signal, a predetermined datapattern may be used to fill gaps where no such data is available orscheduled for transmission.

[0045] In some applications, it may be desirable for the timing signalto convey timing information that is unambiguous over an intervalgreater than a period of the spreading code. It may also be desirablefor the timing signal to convey other types of information notnecessarily related to timing. In such cases, in addition to the codephase, the timing signal may be modulated by data representing otherinformation as described below.

[0046] In the NAVSTAR GPS, time is counted in 1.5-second epochs, and thecurrent time base is communicated by each SV in a 29-bit binary numbercalled a Z-count. The Z-count has two parts: the ten most significantbits indicate the sequential number of the current GPS week modulo 1024,and the least significant 19 bits indicate the number of epochs thathave elapsed since the transition from the previous week (also calledthe time-of-week or TOW count, and corresponding to the start of thenext subframe).

[0047] A NAVSTAR GPS navigation message includes a series of fivesubframes, each subframe having a length of 300 bits. In some respect,the subframes are similar. For example, each subframe begins with a30-bit telemetry (TLM) word whose content is usually constant, followedby a 30-bit handover word (HOW) that begins with the 17 most significantbits of the TOW count. In other respects, the subframes differ. Subframe1 includes the ten most significant bits of the Z-count (i.e. the GPSweek number modulo 1024) and satellite clock correction parameters.Subframes 2 and 3 include parameters that indicate the SV's location,velocity, and direction (also called ‘ephemeris data’). Subframes 4 and5 include almanac data.

[0048] In a further implementation of method M100, the timing signal ismodulated by data representing information that mimics some portion ofthe GPS navigation message. For example, the timing signal may bemodulated by a time information message at the GPS data rate of 50 Hzthat has an appropriate copy (e.g. with respect to format and locationwithin the message) of at least a portion of the GPS Z-count (e.g. theHOW).

[0049] In another example, the timing signal is modulated by data thatidentifies the latitude and longitude of the point of transmission (e.g.in an ephemeris data portion corresponding an appropriate portion of GPSsubframes 2 and/or 3). Such positional information may be measured andrecorded when implementation of the method begins and may be updated ina case where the point of transmission is moved. In one suchimplementation, for example, the timing signal is modulated by ephemerisdata that describes the decaying Keplerian orbit of a satellite justprior to impact with the earth (e.g. at the point of reception).

[0050] In a further example, the timing signal is modulated byinformation that is usually constant in the GPS navigation message (e.g.the TLM word). Such information may facilitate reception of thetransmitted timing signal (e.g. by aiding in signal integration).

[0051] In implementations for other GPS applications, the timing signalmay be modulated by data that does not correspond to data in the GPSnavigation message. In an application to a network for wirelesscommunications, for example, additional information may be received overa paging channel. In a CDMA network for cellular telephony, suchinformation may include data identifying the base station (e.g. a basestation identification number or ‘BSID’), data relating to other networkparameters (e.g. information identifying a CDMA frequency band and/or afrequency slot within such a band, a network identification number or‘NID’, a system identification number or ‘SID’), and/or data transmittedin the form of a broadcast message. Information received in this oranother manner may be passed along to appear in the timing signal.

[0052] Other information included in the data modulating the timingsignal may identify or otherwise relate to a device that performs animplementation of method M100 (or an implementation of another methodaccording to an embodiment of the invention, or a portion of such amethod). For example, values relating to location, ambient or operatingtemperature, power reserve level, and/or estimated timing error may becommunicated via the timing signal. Task T300 may also include dataprocessing operations such as interleaving, coding (e.g. convolutional,turbo, and/or parity coding), and puncturing.

[0053] Even in a GPS application, the data rate of the timing signalneed not be limited to the 50 bits/second of the navigation message. Forexample, the data rate of a signal that is spread using a GPS C/A codemay reach as high as 1000 bits/second. In one application, at least aportion of the timing signal conforms to the higher-data-rate format ofa GPS-based WAAS (Wide Area Augmentation System), which transmits at adata rate of 500 bits/second.

[0054]FIG. 5 shows a flowchart for a method M200 according to anembodiment of the invention. Task T400 transmits the timing signal. Fora NAVSTAR GPS application, task T400 may transmit the timing signal atthe GPS L1 carrier frequency using BPSK modulation (e.g. with atime-limited square pulse shape). In other applications, the timingsignal may be modulated onto one or more carrier signals according to anamplitude modulation (AM) scheme such as OOK (on-off keying); afrequency shift keying (FSK) scheme; a phase shift keying (PSK) schemesuch as QPSK (quadrature PSK), 8-PSK, or OQPSK (offset QPSK); a minimumshift keying (MSK) scheme such as GMSK (Gaussian MSK); or a mixed schemesuch as QAM (quadrature amplitude modulation). Task T400 may alsoinclude signal processing operations such as filtering (e.g.pulse-shaping), amplification, and impedance matching.

[0055] In a case where the timing signal (or an image or harmonicthereof) is transmitted at or near a frequency that is used by anexisting system, a near-far problem or other interference problem may beencountered. For example, a receiver of NAVSTAR GPS signals is typicallydesigned to receive SV signals at a power level of −160 dBw. Theworst-case cross-correlation between two GPS C/A codes is estimated tobe −21.6 dB. Therefore, cross-correlations between signals from GPS SVsand a timing signal spread with a GPS C/A code and BPSK-modulated ontoan L1 carrier may be expected to begin at a received power level of only−138.4 dBw. For example, a signal spread with a GPS C/A code of PRNgreater than 32 may interfere in such manner with the operation of a GPSreceiver even if the particular receiver does not recognize C/A codes ofPRN greater than 32. In one implementation, task T400 transmits thetiming signal at a power level that is selected according to factorssuch as the desired ‘near limit’ (i.e. the radius within whichinterference with an existing system may occur) and ‘far limit’ (i.e.the radius beyond which the transmitted timing signal is too weak foracceptable reception).

[0056] In other implementations, task T400 transmits the timing signalover a carrier whose center frequency is shifted with respect to afrequency of the existing system. In one such implementation, the centerfrequency of the transmitted timing signal is placed at a spectral nullof the signal of the existing system. For example, the timing signal maybe transmitted at a frequency that is offset from the GPS L1 carrierfrequency by 1.023 MHz. In some applications of such an implementation,it may be desirable to modify a receiver's signal processing path toensure that the transmitted timing signal falls within the receiver'spassband.

[0057] In another implementation, task T300 uses a different C/A code tospread the timing signal. For example, a longer code at the same chiprate may be used, or a code at a different chip rate (e.g. the 10-MHzchip rate used by the NAVSTAR GPS P code) may be used.

[0058] In a further implementation, task T400 varies the power level ofthe transmitted timing signal over time. For example, the transmittedtiming signal may be pulsed at a duty cycle of approximately 10%, withpulse durations of approximately 100 microseconds.

[0059] In a method according to another embodiment of the invention, thepredetermined offset as described above may already be incorporated intothe received signal. For example, a ground transmitter (e.g. a basestation or repeater) transmitting a spread spectrum signal may advancethe code phase of the signal according to the predetermined offset. Insuch a case, the timing signal may be based on the time base of thereceived signal.

[0060]FIG. 6 shows a block diagram of an apparatus 100 according to anembodiment of the invention. Time base processor 110 applies apredetermined offset to a first time base to obtain a second time base.Timing signal generator 120 generates a timing signal whose code phaseis based on the second time base.

[0061] Time base processor 110 and timing signal generator 120 may eachinclude one or more processors and/or arrays of logic elements. Sucharrays may be implemented as general-purpose devices (such asmicroprocessors or other digital signal processors), embodied within oneor more application-specific integrated circuits (ASICs), and/orprogrammed into one or more configurable devices such asfield-programmable gate arrays (FPGAs). In some applications, the samearray or arrays may serve as time base processor 110 (or a portionthereof) at one time and as timing signal generator 120 (or a portionthereof) at a different time. It may also be possible for such an arrayor arrays to perform in parallel tasks of both time base processor 110and timing signal generator 120. Alternatively or additionally, one orboth of processor 110 and generator 120 may include a set ofinstructions executable on one or more such arrays of logic elements.

[0062]FIG. 7 shows a block diagram of an implementation 102 of apparatus100. Time base clock 90 may include a timing circuit such as anoscillator and may also include a counter (in hardware, firmware, and/orsoftware) driven by the timing circuit. In one arrangement of apparatus102, time base clock 90 provides time base processor 110 with the firsttime base. In another arrangement of apparatus 102, time base processor110 applies the predetermined offset to the first time base as obtainedfrom the received signal and forwards this value to time base clock 90,which clock then maintains the second time base.

[0063]FIG. 8 shows a block diagram of an implementation 200 of apparatus100. Searcher 130 obtains a code phase of the received signal and mayinclude any suitable correlating or MMSE device. Decoder 140 obtains atime information message from the received signal and may performoperations such as despreading, decompression, deinterleaving, anddecoding of convolutional, turbo, and/or parity codes. An implementationof apparatus 100 may also include fingers (e.g. within decoder 140) thatare assigned (e.g. by searcher 130) to despread individual multipathinstances of the received signal.

[0064]FIG. 9 shows a block diagram of an implementation 202 of apparatus200. Time base processor 110 sets time base clock 90 according to thefirst time base, and thereafter time base clock 90 provides time baseprocessor 110 with the first time base. In another arrangement ofapparatus 202, time base processor 110 applies the predetermined offsetto the first time base as obtained from the received signal and forwardsthis value to time base clock 90, which clock then maintains the secondtime base.

[0065]FIG. 10 shows a transceiver 300 according to an embodiment of theinvention. Receiver 150 receives the received signal, and transmitter160 transmits the timing signal. Receiver 150 may filter and/or amplifythe received signal and downconvert the signal to baseband. Transmitter160 may upconvert the timing signal to RF and amplify and/or filter thesignal. FIG. 11 shows a block diagram of an implementation 302 ofapparatus 300 that includes time base clock 90.

[0066] The received and transmitted signals may differ in kind, such asin terms of frequency, amplitude, and/or bandwidth. The received andtransmitted signals may also differ in terms of the modulation schemesaccording to which each signal is produced. For example, the signals maybe modulated according to an amplitude modulation (AM) scheme such asOOK (on-off keying); a frequency shift keying (FSK) scheme; a phaseshift keying (PSK) scheme such as BPSK (binary PSK), QPSK (quadraturePSK), 8-PSK, or OQPSK (offset quadrature phase shift keying); a minimumshift keying (MSK) scheme such as GMSK (Gaussian minimum shift keying);or a mixed scheme such as QAM (quadrature amplitude modulation).Transceiver 300 may but need not be constructed or configured to receiveand transmit signals of like kind.

[0067] In some applications, the various elements of transceiver 300 areimplemented as multi-functional modules and/or as interconnectedmodules. Further, such modules may be located in multiple discretedevices in some embodiments.

[0068] In an exemplary application, transceiver 300 receives signalsfrom a base station of a CDMA network for cellular telephony (e.g. overa portion of an 800 MHz, 1.7 GHz, or 1.9 GHz band) and transmits atiming signal spread with a GPS C/A code and BPSK-modulated on an L1carrier. In a particular embodiment, decoder 140 outputs a strobe signalevery 80 milliseconds that is synchronized with the start of both theCDMA PRN code of the received signal and the GPS C/A code to which itstiming is related. In other arrangements of an apparatus 100 as shown inFIGS. 8-11, decoder 140 may be downstream of time base processor 110,e.g. such that the predetermined offset has been applied to the signalinputted to decoder 140.

[0069] In some applications, an appropriate implementation oftransceiver 300 may be used to augment a position location solution inenvironments where GPS signal detection is difficult or impossible: forexample, an urban canyon, indoors, or underground. In such cases, atransceiver 300 may be placed in a building, a subway or other tunnel, abelow-ground business area or other underground structure or area suchas a cavern. In some such applications, an implementation of transceiver300 that does not require signal visibility to a GPS satellite may befreely moved and positioned within its environment (possibly subject torecalibration of the predetermined offset).

[0070] An implementation of transceiver 300 may include one or morenonvolatile parameters. For example, timing signal generator 120 mayreference one or more such parameters to configure one or more codesused to spread and/or cover the timing signal (e.g. a GPS PRN number).At least some of these parameters may be programmable, such as via akeypad or external data connection.

[0071] Implementations of transceiver 300 may be constructed that sharemuch hardware with a cellular telephone but need not include a displayor input device (e.g. keypad), have a weaker power amplifier, and/or arepowered at least partially by a battery and/or by ambient (e.g. solar)energy or some other external power source.

[0072]FIG. 12 is a block diagram of a particular implementation 305 oftransceiver 300. Bandpass filter (BPF) 710 passes signals in a selectedCDMA cellular telephony band. Low noise amplifier (LNA) 720 amplifiesthe received signal to a desired level. Zero intermediate frequency(ZIF) receive downconverter 730 downconverts the received signal tobaseband. In an exemplary implementation, ZIF receive downconverter 730includes the RFR6000™ RF-to-receive-baseband chip (QUALCOMMIncorporated, San Diego, Calif.). In other embodiments, the receivedsignal may be downconverted to an intermediate frequency and then tobaseband.

[0073] Processor 740 obtains the first time base from the basebandsignal outputted by downconverter 730. Processor 740 then applies apredetermined offset and generates a timing signal as described herein(e.g. a timing signal modulated by data representing information that isbased on at least a portion of the GPS navigation message format). Forexample, processor 740 may include an MSM6000™ or MSM6050™ basebandprocessor (QUALCOMM Inc.) configured to provide an 80-millisecond timestrobe (synchronized to the start of both the CDMA PRN code of thereceived signal and the GPS C/A code to which its timing is related) toone or more additional processors.

[0074] ZIF transmit upconverter 750 upconverts the timing signal frombaseband to RF for transmission. ZIF transmit upconverter 750 mayinclude an RF16100™ transmit-baseband-to-RF converter (QUALCOMM Inc.) orother device capable of transmitting at the desired frequency. In otherembodiments, the timing signal may be upconverted to an intermediatefrequency and then to RF. PA 760 amplifies the RF signal outputted byZIF transmit upconverter 750 to a desired level for transmission, andGPS BPF 770 filters the amplified signal as desired before transmission.

[0075] The foregoing presentation of the described embodiments isprovided to enable any person skilled in the art to make or use thepresent invention. Various modifications to these embodiments arepossible, and the generic principles presented herein may be applied toother embodiments as well. For example, the invention may be implementedin part or in whole as a hard-wired circuit or as a circuitconfiguration fabricated into an application-specific integrated circuit

[0076] The invention may also be implemented in part or in whole as afirmware program loaded into non-volatile storage or a software programloaded from or into a data storage medium as machine-readable code, suchcode being instructions executable by an array of logic elements asdescribed above. In one example, the data storage medium is asemiconductor chip (or portion thereof) such as an ASIC or random-accessmemory module (e.g. CMOS, flash, or ferroelectric). In another example,the storage medium is a magnetic, optical, magneto-optional, orphase-change medium in disk or tape form (e.g. a floppy or hard disk ora compact disk) or removable module (e.g. a card in PCMCIA,CompactFlash, SmartMedia, or MemoryStick format).

[0077] Thus, the present invention is not intended to be limited to theembodiments shown above but rather is to be accorded the widest scopeconsistent with the principles and novel features disclosed in anyfashion herein.

What is claimed is:
 1. A method of wireless communications, said methodcomprising: obtaining a first time base of a signal received from aground transmitter; applying a predetermined offset to the first timebase to obtain a second time base; and generating a timing signal,wherein the predetermined offset is based on a propagation delay of thereceived signal, and wherein a code phase of the timing signal is basedon the second time base.
 2. The method of wireless communicationsaccording to claim 1, wherein the second time base is aligned with atime base of a positioning satellite system.
 3. The method of wirelesscommunications according to claim 2, wherein generating a timing signalincludes spreading the timing signal with a spreading code of thepositioning satellite system.
 4. The method of wireless communicationsaccording to claim 3, wherein the timing signal is modulated by datarepresenting time information arranged in a data format of thepositioning satellite system.
 5. The method of wireless communicationsaccording to claim 1, wherein generating a timing signal includesspreading the timing signal with a pseudorandom noise code.
 6. Themethod of wireless communications according to claim 1, wherein saidobtaining a first time base includes obtaining a code phase of thereceived signal.
 7. The method of wireless communications according toclaim 1, wherein said method includes decoding a time informationmessage from the received signal.
 8. The method of wirelesscommunications according to claim 1, wherein said obtaining a first timebase includes obtaining a code phase from a first channel of thereceived signal; and wherein said method further comprises decoding atime information message from a second channel of the received signal,the second channel being different from the first channel.
 9. The methodof wireless communications according to claim 8, wherein the firstchannel is spread with a first spreading code, and wherein the secondchannel is spread with a second spreading code, the second spreadingcode being different from the first spreading code.
 10. The method ofwireless communications according to claim 8, wherein the first channelis covered with a first covering code, and wherein the second channel iscovered with a second covering code, the second covering code beingdifferent from the first covering code.
 11. The method of wirelesscommunications according to claim 1, wherein the timing signal ismodulated by data representing information identifying a location atwhich said obtaining a first time base is performed.
 12. The method ofwireless communications according to claim 1, said method furthercomprising transmitting the timing signal, wherein said generating atiming signal includes spreading the timing signal with a spreadingcode, and wherein said transmitting the timing signal includesperiodically varying a power level of the timing signal.
 13. The methodof wireless communications according to claim 1, said method furthercomprising at least one among (A) synchronizing an oscillator accordingto the first time base and (B) adjusting a code generator according tothe first time base.
 14. The method of wireless communications accordingto claim 1, said method further comprising at least one among (A)synchronizing an oscillator according to the second time base and (B)adjusting a code generator according to the second time base.
 15. Themethod of wireless communications according to claim 1, wherein saidobtaining a first time base from a signal received from a groundtransmitter includes receiving the signal at a terrestrial location. 16.A method of wireless communications, said method comprising: receiving asignal from a base station of a CDMA network for cellular telephony;obtaining a first time base from the received signal; applying apredetermined offset to the first time base to obtain a second timebase; and generating a timing signal, wherein the predetermined offsetis based on a propagation delay of the received signal, and wherein acode phase of the timing signal is based on the second time base. 17.The method of wireless communications according to claim 16, wherein thepredetermined offset is based on at least one signal processing delay.18. The method of wireless communications according to claim 16, whereinthe second time base is aligned with a time base of a positioningsatellite system.
 19. The method of wireless communications according toclaim 16, wherein said obtaining a first time base includes obtaining acode phase of the received signal.
 20. The method of wirelesscommunications according to claim 16, wherein said obtaining a firsttime base includes obtaining a code phase from a first channel of thereceived signal, and wherein said method further comprises decoding atime information message from a second channel of the received signal,the second channel being different from the first channel.
 21. Themethod of wireless communications according to claim 16, wherein thetiming signal is modulated by data representing information identifyinga location at which said obtaining a first time base is performed. 22.The method of wireless communications according to claim 16, wherein thetiming signal is modulated by a predetermined pattern at a data rate ofthe positioning satellite system.
 23. The method of wirelesscommunications according to claim 16, said method further comprising atleast one among (A) synchronizing an oscillator according to the secondtime base and (B) adjusting a code generator according to the secondtime base.
 24. An apparatus for wireless communications, said apparatuscomprising: means for receiving a signal from a ground transmitter;means for obtaining a first time base from the received signal; meansfor applying a predetermined offset to the first time base to obtain asecond time base; and means for generating a timing signal, wherein thepredetermined offset is based on a propagation delay of the receivedsignal, and wherein a code phase of the timing signal is based on thesecond time base.
 25. The apparatus for wireless communicationsaccording to claim 24, wherein the predetermined offset is based on atleast one signal processing delay.
 26. The apparatus for wirelesscommunications according to claim 24, wherein the second time base isaligned with a time base of a positioning satellite system.
 27. Theapparatus for wireless communications according to claim 24, whereinsaid means for obtaining a first time base includes means for obtaininga code phase of the received signal.
 28. The apparatus for wirelesscommunications according to claim 24, wherein said means for obtaining afirst time base includes means for obtaining a code phase from a firstchannel of the received signal, and wherein said apparatus furthercomprises means for decoding a time information message from a secondchannel of the received signal, the second channel being different fromthe first channel.
 29. An apparatus for wireless communications, saidapparatus comprising: a receiver configured and arranged to receive asignal from a ground transmitter; a time base processor configured andarranged to apply a predetermined offset to a time base of the receivedsignal to obtain a second time base; and a timing signal generatorconfigured and arranged to generate a timing signal, wherein a codephase of the timing signal is based on the second time base.
 30. Theapparatus for wireless communications according to claim 29, saidapparatus further comprising a searcher configured and arranged toobtain a code phase of the received signal.
 31. The apparatus forwireless communications according to claim 29, said apparatus furthercomprising a decoder configured and arranged to decode a timeinformation message from the received signal.
 32. The apparatus forwireless communications according to claim 31, wherein said decoder isfurther configured and arranged to output a strobe signal indicating acoincidence between code phases of a spreading code of the signal beingdecoded and a corresponding GPS C/A code.
 33. The apparatus for wirelesscommunications according to claim 29, wherein the second time base isaligned with a time base of a positioning satellite system.
 34. Theapparatus for wireless communications according to claim 33, whereinsaid timing signal generator is further configured and arranged tospread the timing signal with a spreading code of the positioningsatellite system.
 35. The apparatus for wireless communicationsaccording to claim 29, wherein said time base processor is furtherconfigured and arranged to perform at least one among the acts of (A)synchronizing an oscillator according to the time base of the receivedsignal and (B) adjusting a code generator according to the time base ofthe received signal.
 36. The apparatus for wireless communicationsaccording to claim 29, wherein said time base processor is furtherconfigured and arranged to perform at least one among the acts of (A)synchronizing an oscillator according to the second time base and (B)adjusting a code generator according to the second time base.
 37. Atransceiver, comprising: a receiver configured and arranged to receive asignal from a ground transmitter; a searcher configured and arranged toobtain a code phase of the received signal; a time base processorconfigured and arranged to apply a predetermined offset to a first timebase to obtain a second time base; a timing signal generator configuredand arranged to generate a timing signal; and a transmitter configuredand arranged to transmit the timing signal, wherein the first time baseis based on the code phase of the received signal, and wherein a codephase of the timing signal is based on the second time base.
 38. Thetransceiver according to claim 37, wherein the receiver is configuredand arranged to receive a signal of a base station of a CDMA network forcellular telephony.
 39. The transceiver according to claim 37, whereinthe second time base is aligned with a time base of a positioningsatellite system, and wherein the timing signal generator is configuredand arranged to spread the timing signal with a spreading code of thepositioning satellite system.
 40. The transceiver according to claim 39,wherein the timing signal generator is further configured and arrangedto modulate the timing signal by a predetermined pattern at a data rateof the positioning satellite system, and wherein the transmitter isconfigured and arranged to transmit the timing signal over a carrierhaving a frequency of the positioning satellite system.
 41. An apparatuscomprising a data storage medium, said medium having a set ofinstructions executable by an array of logic elements, said instructionsdefining a method of wireless communications including: obtaining afirst time base of a signal received from a ground transmitter; applyinga predetermined offset to the first time base to obtain a second timebase; and generating a timing signal, wherein the predetermined offsetis based on a propagation delay of the received signal, wherein a codephase of the timing signal is based on the second time base.
 42. Amethod of wireless communications, said method comprising: obtaining atime base of a signal received from a ground transmitter; and generatinga timing signal, wherein a code phase of the timing signal is based onthe time base, and, wherein generating a timing signal includesspreading the timing signal with a spreading code of a positioningsatellite system.